#define  _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
#include<cmath>
using namespace std;
class CPoint {
public:
	int x;
	int y;
	CPoint(){}

	CPoint(int x, int y) {
		this->x = x;
		this->y = y;
	}
	CPoint(CPoint& c) {
		this->x = c.x;
		this->y = c.y;
	}
};
class CLine {
public:
	CPoint p1;
	CPoint p2;
	static int count;

	CLine(CPoint p1, CPoint p2) {
		this->p1 = p1;
		this->p2 = p2;
		count++;
	}
	CLine(CLine& c) {
		this->p1 = c.p1;
		this->p2 = c.p2;
		count++;
	}

	int GetLen() {
		return sqrt((p1.x - p2.x) * (p1.x - p2.x) + (p1.y - p2.y) * (p1.y - p2.y));
	}
	static int ShowCount() {
		return count;
	}
};
int CLine::count = 0;

int main() {
	int x, y;
	cin >> x >> y;
	CPoint p1(x, y);
	cin >> x >> y;
	CPoint p2(x, y);
	CLine line1(p1, p2);
	cout << "the length of line1 is:" << line1.GetLen() << endl;
	CLine line2(line1);
	cout << "the length of line2 is:" << line2.GetLen() << endl;
	cout << "the count of CLine is:" << CLine::ShowCount() << endl;
	return 0;
}